[php]如何设定一个函数的某参数可有可无?

来源:百度知道 编辑:UC知道 时间:2024/06/17 07:58:23
function getdata($a,$b,$c){
...
};

现在我想要$c参数可有可无,不加也不报错。

给参数设定默认值,但只能是最后面的参数可省略,如果带默认值的参数放在中间的话,那么就得在中间多留个逗号分开,下面给几个例子:
function getdata($a,$b,$c=0){
....
}
上面这段在调用的时候可以只给两个参数,第三个参数默认值为0
调用方法:getdata(1,1)
==========================================================
function getdata($a,$b=1,$c){
....
}
这段在调用的时候就要在中间多留个逗号了,如:getdata(1,,0)
==========================================================
function getdata($a,$b=0,$c=1){
....
}
这段的调用可以这样:getdata(1)

在定义函数的时候给参数设定一个莫认真,从右到左的顺序~
function myFun($a,$b,$c)//三个必须参数
function myFun($a,$b,$c='')//两个必须参数
function myFun($a,$b='',$c)//两个必须参数,但是这种情况经常会导致疏忽,直接调用myFun(1,2);这个是错误的调用,2是赋值给$b参数的,而必须的c参数却没有值,所以才推荐可选参数放在参数的右边~

一些参数参考
下列选项的值将被作为长整形使用(在option参数中指定):
CURLOPT_INFILESIZE: 当你上传一个文件到远程站点,这个选项告诉PHP你上传文件的大小。
CURLOPT_VERBOSE: 如果你想CURL报告每一件意外的事情,设置这个选项为一个非零值。
CURLOPT_HEADER: 如果你想把一个头包含在输出中,设置这个选项为一个非零值。
CURLOPT_NOPROGRESS: 如果你不会PHP为CURL传输显示一个进程条,设置这个选项为一个非零值。<